五、
PLC
串接
MQTT
推播
手機
-
故障叫修
成員
:
黃豊益
指導老師
:
卓柏洲
專題目的
►
控制除了要智
慧,因應時代
需求也開始需
要
接上雲端,龐
大的原
始數據
應當有更具意
義
的發揮,此專
題主要目的是
讓控制真正的
走
入網控,並將
蒐集的數據用
於更有實質幫
助
的企業分析,
除了提
升設備
穩定性,也後
續
追蹤的效率。
功能簡述
►
使用
PLC
結合
Mqtt
,對場域設備做電源
品質監
控、溫度監控
。
►
提供人機介面
方便人員監看
。
►
當設備異常時
,將及
時發出
”
故障叫
修
”
通知,
該訊息會透過
Line Notify
發給管理員。
►
蒐集監控數據,使用
Power
BI
來分析數據。
目錄
:
►
專題引用
►
專題的工具
►
專題的演算
►
專題運作
內容功能主述
►
專題結論
專題引用
►
PLC
引用課程資料,書籍。
►
RTU
多功能電錶參
閱手冊。
►
C#
桌面端程式引用開源
Library:
►
NModbus4
、
MQTTnet
專題的工具
(1)
►
PLC
►
RTU
多功能電錶
: Slave
設備。
►
485
-ADP
: PLC
作為
Master
,與多個
Slav
e
設備通信。
►
3A
-ADP
:
用於
A
DV
模擬輸
入
(
電壓
)
控制。
專題的工具
(2)
►
IO
實習模組
►
使用旋鈕來輸出
0v~5v
的電壓,
用於模
擬溫度變化。
►
藉由溫度來影響繼電器
(
控制排風扇
)
輸出。
►
使用了一些按鈕,燈號
。
專題的工具
(3)
►
PC
►
撰寫桌面端程式
(
左圖
)
,來接收
PLC
的監控數
據。
►
桌面端程式除了接收監控數據,
並將數據整理
成
JSON
格式,並發
佈
至
Mqtt
Brocker
。
►
Database
由
CPC
建置,監控數據也會寫
入資料庫。
►
台達人機介面
(
右圖
)
,方便
人員監
看。
專題的工具
(4)
►
Mobile
Phone(Android)
►
Line :
用於接收
Line
notify
通知訊息。
►
Iot Mqtt Panel
:
將蒐集的監控資料,即時呈現多種圖表。
專題的演算
MQ
TT
Modbus(master)
-> Modbus(slave)
via COM
port.
模擬溫度、故障按
鈕、繼電器
Modbus(slave)
IO
實習模組
電錶
PLC
HMI
PC
Mobile
Database
專題運作
內容功能主述
(1)
►
PLC
部分
:
►
撰寫實體按鈕、燈號、繼電器的程式。
►
485
-ADP :
撰寫
Modbus(Master)
的接收、發送
程式。
►
接收電錶的資料,依照電錶手冊
說明,將相
應位址的資料取出。
►
3A
-ADP :
模擬偵測的溫度
值。
►
結合上述資料,自行定義一連續暫存器位址,
即可發送給
PC
。
專題運作
內容功能主述
(2)
►
PC
部分
:
►
撰寫桌面端程式
:
►
實作
Modbus(Slave)
,藉由
RTU->COM
來與
PLC
通信。
►
實作
Mqtt-Client
,自訂一組收發用的
topic
,
用來收發
JSON
資料。
►
藉由
PLC
傳來的資料來判斷設備上的
"
故障
叫修
"
按鈕是否按下,若按下會發出當下該
設備的所有狀態資料至
Line Notify
。
專題運作
內容功能主述
(3)
►
人機介面部分
:
►
部分人機介面用圖從選項
-
圖形庫匯入
►
輸入框讓操作者自己輸入數字,調整繼電器設定
專題運作
內容功能主述
(4)
►
Mobile
部分
:
►
使用
Iot Mqtt Panel
App
►
藉由該
App
,只需要定義好發送出的
JSO
N
格式
資料,即可輕易的構建出人性化圖表。
{"deviceId":1,
"electricMeter":{
"volt":118,
"ampere":0,
"hertz":59},
"tempeControl":
{
"temperature":47,
"relayState":false},
"callOut":fa
lse,
"timeLocalStr":"20
23/02/13
-01:59:46",
"timestamp":1
67604909
3}
專題運作
內容功能主述
(5)
►
Power BI
部分
:
►
撰寫的桌面程式持續收集資料,會將資料寫入
資料庫,再經由
Power BI
來做大數據分析,可
以很快速的實現
"
可視化
"
分析結果。
►
link
專題結論
►
經由參加課程,讓我
認識到工控方面的許多知識,
專題中最棘手的問題
是如何轉
接出
PLC
的資料到網路
上,經由課程學習,
請教老師後,得出了一個可行
辦法,隨後我就進入
C#
桌面程式的撰寫
,實作
Modbus
通訊協定、
Mqtt-Cli
ent
、資料寫入資料庫,
設計界面,也因為我
有行動
App
的開
發背景,這一
切滿順利的,收穫最
大的是
Modbus
通訊協定,以及
如何把收集的資料於
PowerBI
做分析。